package com.lanyun.serviceimpl;/**
 * @author zhy
 * @date 2021/1/6 - 9:37
 */

import com.lanyun.dao.AdminDao;
import com.lanyun.pojo.Admin;
import com.lanyun.service.AdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;

/**

 @ClassName AdminServiceImpl
 @Description xxx
 @Author zhy
 @Date 2021/1/6 - 9:37
 @Version 1.0
 **/
@Service
public class AdminServiceImpl implements AdminService {

    @Autowired
    AdminDao adminDao;

    @Override
    public Admin findByName(Admin admin) {
        return adminDao.findByPwd(admin);
    }//登录功能，根据管理员登录的登录名和密码查询有无此管理员

    @Override
    public List<Admin> findAdmin() {//查找所有管理员
        return adminDao.findAllAdmin();
    }//查找所有管理员

    @Override
    public List<Admin> findAdminById(Integer id) {//根据角色id查管理员
        return adminDao.findAllAdminById(id);
    }

    @Override
    public Integer insertAdmin(Admin admin) {//添加管理员
        return adminDao.createAdmin(admin);
    }

    @Override
    public Integer deleteAdmin(Integer id) {//单项删除管理员，点击删除按钮，拿到对应的id进行删除
        return adminDao.deleteAdminById(id);
    }

    @Override
    public Integer deleteSomeAdmin(String ids) {//批量删除--拿到选中的CheckBox--id进行批量删除
        String id = ids.substring(0,ids.length()-1);
        String [] array = id.split(",");
        List<Integer> list = new ArrayList<>();
        for (int i = 0; i < array.length; i++) {
            list.add(Integer.parseInt(array[i]));
        }
        return adminDao.deleteSomeAdminById(list);
    }

    @Override
    public Admin findAdmin_update(Integer id) {//查找当前管理员的所有信息，数据回显，修改功能
        return adminDao.find_update(id);
    }

    @Override
    public Integer updateAdmin(Admin admin) {//拿到修改后的管理员信息，进行修改操作
        return adminDao.adminUpdate(admin);
    }

    @Override
    public Integer stateStop(Integer id) {//管理员停用，拿到管理员id，修改管理员状态
        return adminDao.adminStateStop(id);
    }

    @Override
    public Integer stateStart(Integer id) {//管理员启用，拿到管理员id，修改管理员状态
        return adminDao.adminStateStart(id);
    }

}
